import Vue from 'vue'
import Vuex from 'vuex'

Vue.use(Vuex);

// 完美解决组件刷新后Vuex消失的问题
const store = new Vuex.Store({
	// vuex不允许我们直接对state进行赋值,所以我们可以通过控制state子属性的方法来赋值
	// 这样state的子属性也是可以成为全局状态变量的
	state: {
		//先去localStorage中获取数据
		userid: JSON.parse(localStorage.getItem("userid")) || {},
	},
	mutations: {
		setuserInfo(state, v) {
			//将传递的数据先保存到localStorage中
			localStorage.setItem('userid', JSON.stringify(v));
			// 之后才是修改state中的状态
			state.userid = v;
		},
	}
});

export default store;